# eric7.Debugger.DebugServer

Module implementing the debug server.

### Global Attributes

DebuggerInterfaces
NetworkInterfaceMapping

### Classes

DebugServer | Class implementing the debug server embedded within the IDE.

### Functions

None

## DebugServer

Class implementing the debug server embedded within the IDE.

### Signals

appendStdout(msg)
  emitted when a passive debug connection is established or lost
callTraceInfo
  emitted after the client reported the call trace data (isCall, fromFile, fromLine, fromFunction, toFile, toLine, toFunction, debuggerId)
clientBanner(version, platform, venvname)
  emitted after the client banner data was received
clientBreakConditionError(fn, lineno, debuggerId)
  emitted after the client has signaled a syntax error in a breakpoint condition
clientCapabilities(capabilities, cltype, venvname)
  emitted after the clients capabilities were received
clientClearBreak(filename, lineno, debuggerId)
  emitted after the debug client has decided to clear a temporary breakpoint
clientClearWatch(condition, debuggerId)
  emitted after the debug client has decided to clear a temporary watch expression
clientCompletionList(completionList, text)
  emitted after the commandline completion list and the reworked search string was received from the client
clientDebuggerId(debuggerId)
  emitted to indicate a newly connected debugger backend
clientDisassembly(disassembly, debuggerId)
  emitted after the client has sent a disassembly of the code raising an exception
clientDisconnected(str)
  emitted after a debug client has disconnected (i.e. closed the network socket)
clientException(exceptionType, exceptionMessage, stackTrace,debuggerId, threadName)
  emitted after an exception occured on the client side
clientExit(str, int, str, bool, str)
  emitted after the client has exited giving the program name, the exit status, an exit message, an indication to be quiet and the ID of the exited client
clientGone(bool)
  emitted if the client went away (planned or unplanned)
clientInterpreterChanged(str)
  emitted to signal a change of the client interpreter
clientLine(filename, lineno, debuggerId, threadName, forStack)
  emitted after the debug client has executed a line of code
clientOutput(str)
  emitted after the client has sent some output
clientProcessStderr(str)
  emitted after the client has sent some output via stderr
clientProcessStdout(str)
  emitted after the client has sent some output via stdout
clientRawInput(prompt, echo, debuggerId)
  emitted after a raw input request was received
clientRawInputSent(debuggerId)
  emitted after the data was sent to the indicated debug client
clientSignal(message, filename, linenumber, function name,function arguments, debuggerId)
  emitted after a signal has been generated on the client side
clientStack(stack, debuggerId, threadName)
  emitted after the debug client has executed a line of code
clientStatement(continue, debuggerId)
  emitted after an interactive command has been executed. The parameter is False to indicate that the command is complete and True if it needs more input.
clientSyntaxError(message, filename, linenumber, characternumber,debuggerId, threadName)
  emitted after a syntax error has been detected on the client side
clientThreadList(currentId, threadList, debuggerId)
  emitted after a thread list has been received
clientThreadSet(debuggerId)
  emitted after the client has acknowledged the change of the current thread
clientVariable(scope, variables, debuggerId)
  emitted after a dump for one class variable has been received
clientVariables(scope, variables, debuggerId)
  emitted after a variables dump has been received
clientWatchConditionError(condition, debuggerId)
  emitted after the client has signaled a syntax error in a watch expression
lastClientExited()
  emitted to indicate that the last connected debug client has terminated
mainClientExit()
  emitted to indicate that the main client process has exited
passiveDebugStarted(str, bool)
  emitted after the debug client has connected in passive debug mode

### Derived from

QTcpServer

### Class Attributes

None

### Class Methods

None

### Methods

DebugServer | Constructor
__addBreakPoints | Private slot to add breakpoints.
__addWatchPoints | Private slot to set a watch expression.
__breakPointDataAboutToBeChanged | Private slot to handle the dataAboutToBeChanged signal of the breakpoint model.
__changeBreakPoints | Private slot to set changed breakpoints.
__changeWatchPoints | Private slot to set changed watch expressions.
__clientClearBreakPoint | Private slot to handle the clientClearBreak signal.
__clientClearWatchPoint | Private slot to handle the clientClearWatch signal.
__clientProcessError | Private slot to process client output received via stderr.
__clientProcessOutput | Private slot to process client output received via stdout.
__createDebuggerInterface | Private slot to create the debugger interface object.
__deleteBreakPoints | Private slot to delete breakpoints.
__deleteWatchPoints | Private slot to delete watch expressions.
__findLanguageForExtension | Private method to get the language associated with a file extension.
__getNetworkInterfaceAndIndex | Private method to determine the network interface and the interface index.
__makeWatchCondition | Private method to construct the condition string.
__newConnection | Private slot to handle a new connection.
__passiveShutDown | Private method to shut down a passive debug connection.
__registerDebuggerInterfaces | Private method to register the available internal debugger interfaces.
__remoteBreakpointEnable | Private method to enable or disable a breakpoint.
__remoteBreakpointIgnore | Private method to ignore a breakpoint the next couple of occurrences.
__remoteWatchpoint | Private method to set or clear a watch expression.
__remoteWatchpointEnable | Private method to enable or disable a watch expression.
__remoteWatchpointIgnore | Private method to ignore a watch expression the next couple of occurrences.
__restoreBreakpoints | Private method to restore the breakpoints after a restart.
__restoreNoDebugList | Private method to restore the list of scripts not to be debugged after a restart.
__restoreWatchpoints | Private method to restore the watch expressions after a restart.
__setClientType | Private method to set the client type.
__splitWatchCondition | Private method to split a remote watch expression.
__watchPointDataAboutToBeChanged | Private slot to handle the dataAboutToBeChanged signal of the watch expression model.
getBreakPointModel | Public slot to get a reference to the breakpoint model object.
getClientCapabilities | Public method to retrieve the debug clients capabilities.
getClientInterpreter | Public method to get the interpreter of the debug client.
getClientType | Public method to get the currently running debug client type.
getDebuggerIds | Public method to return the IDs of the connected debugger backends.
getEricServerEnvironmentString | Public method to get the string for an eric-ide server environment.
getExtensions | Public slot to get the extensions associated with the given language.
getHostAddress | Public method to get the IP address or hostname the debug server is listening.
getProjectEnvironmentString | Public method to get the string for the project environment.
getSupportedLanguages | Public slot to return the supported programming languages.
getWatchPointModel | Public slot to get a reference to the watch expression model object.
initializeClient | Public method to initialize a freshly connected debug client.
isClientProcessUp | Public method to check, if the debug client process is up or we are doing debugging via the eric-ide server.
isConnected | Public method to test, if the debug server is connected to a backend.
isDebugging | Public method to test, if the debug server is debugging.
mainClientConnected | Public method to perform actions after the main client has finally established the connection.
passiveStartUp | Public method to handle a passive debug connection.
preferencesChanged | Public slot to handle the preferencesChanged signal.
registerDebuggerInterface | Public method to register a debugger interface.
remoteBanner | Public slot to get the banner info of the remote client.
remoteBreakpoint | Public method to set or clear a breakpoint.
remoteCapabilities | Public slot to get the debug clients capabilities.
remoteClientDisassembly | Public method to ask the client for the latest traceback disassembly.
remoteClientSetFilter | Public method to set a variables filter list.
remoteClientStack | Public method to request the stack of the main thread.
remoteClientVariable | Public method to request the variables of the debugged program.
remoteClientVariables | Public method to request the variables of the debugged program.
remoteCompletion | Public slot to get the a list of possible commandline completions from the remote client.
remoteContinue | Public method to continue the debugged program.
remoteContinueUntil | Public method to continue the debugged program to the given line or until returning from the current frame.
remoteCoverage | Public method to load a new program to collect coverage data.
remoteEnvironment | Public method to set the environment for a program to debug, run, ...
remoteLoad | Public method to load a new program to debug.
remoteMoveIP | Public method to move the instruction pointer to a different line.
remoteProfile | Public method to load a new program to collect profiling data.
remoteRawInput | Public method to send the raw input to the debugged program.
remoteRun | Public method to load a new program to run.
remoteSetThread | Public method to request to set the given thread as current thread.
remoteStatement | Public method to execute a Python statement.
remoteStep | Public method to single step the debugged program.
remoteStepOut | Public method to step out the debugged program.
remoteStepOver | Public method to step over the debugged program.
remoteStepQuit | Public method to stop the debugged program.
remoteThreadList | Public method to request the list of threads from the client.
setCallTraceEnabled | Public method to set the call trace state.
setDebugging | Public method to set the debugging state.
shutdownServer | Public method to cleanly shut down.
signalClientBanner | Public method to process the client banner info.
signalClientBreakConditionError | Public method to process the client breakpoint condition error info.
signalClientCallTrace | Public method to process the client call trace data.
signalClientCapabilities | Public method to process the client capabilities info.
signalClientClearBreak | Public method to process the client clear breakpoint command.
signalClientClearWatch | Public slot to handle the clientClearWatch signal.
signalClientCompletionList | Public method to process the client auto completion info.
signalClientDebuggerId | Public method to signal the receipt of a new debugger ID.
signalClientDisassembly | Public method to process the disassembly info from the client.
signalClientDisconnected | Public method to send a signal when a debug client has closed its connection.
signalClientException | Public method to process the exception info from the client.
signalClientExit | Public method to process the client exit status.
signalClientLine | Public method to process client position feedback.
signalClientOutput | Public method to process a line of client output.
signalClientRawInput | Public method to process the client raw input command.
signalClientSignal | Public method to process a signal generated on the client side.
signalClientStack | Public method to process a client's stack information.
signalClientStatement | Public method to process the input response from the client.
signalClientSyntaxError | Public method to process a syntax error info from the client.
signalClientThreadList | Public method to process the client thread list info.
signalClientThreadSet | Public method to handle the change of the client thread.
signalClientVariable | Public method to process the client variable info.
signalClientVariables | Public method to process the client variables info.
signalClientWatchConditionError | Public method to process the client watch expression error info.
signalLastClientExited | Public method to process the last client exit event.
signalMainClientExit | Public method to process the main client exiting.
startClient | Public method to start a debug client.
unregisterDebuggerInterface | Public method to unregister a debugger interface.

### Static Methods

None

#### DebugServer (Constructor)

DebugServer(originalPathString, preventPassiveDebugging=False, project=None, parent=None, )

Constructor

originalPathString (str)
  original PATH environment variable
preventPassiveDebugging (bool (optional))
  flag overriding the PassiveDbgEnabled setting (defaults to False)
project (Project (optional))
  reference to the project object (defaults to None)
parent (QObject)
  reference to the parent object

#### DebugServer.__addBreakPoints

__addBreakPoints(parentIndex, start, end, debuggerId="")

Private slot to add breakpoints.

parentIndex (QModelIndex)
  index of parent item
start (int)
  start row
end (int)
  end row
debuggerId (str)
  ID of the debugger backend to send to. If this is empty, they will be broadcast to all connected backends.

#### DebugServer.__addWatchPoints

__addWatchPoints(parentIndex, start, end, debuggerId="")

Private slot to set a watch expression.

parentIndex (QModelIndex)
  index of parent item
start (int)
  start row
end (int)
  end row
debuggerId (str)
  ID of the debugger backend to send to. If this is empty, they will be broadcast to all connected backends.

#### DebugServer.__breakPointDataAboutToBeChanged

__breakPointDataAboutToBeChanged(startIndex, endIndex)

Private slot to handle the dataAboutToBeChanged signal of the breakpoint model.

startIndex (QModelIndex)
  start index of the rows to be changed
endIndex (QModelIndex)
  end index of the rows to be changed

#### DebugServer.__changeBreakPoints

__changeBreakPoints(startIndex, endIndex)

Private slot to set changed breakpoints.

startIndex (QModelIndex)
  starting index of the change breakpoins
endIndex (QModelIndex)
  ending index of the change breakpoins

#### DebugServer.__changeWatchPoints

__changeWatchPoints(startIndex, endIndex)

Private slot to set changed watch expressions.

startIndex (QModelIndex)
  start index of the rows to be changed
endIndex (QModelIndex)
  end index of the rows to be changed

#### DebugServer.__clientClearBreakPoint

__clientClearBreakPoint(fn, lineno)

Private slot to handle the clientClearBreak signal.

fn (str)
  filename of breakpoint to clear
lineno (int)
  line number of breakpoint to clear

#### DebugServer.__clientClearWatchPoint

__clientClearWatchPoint(condition)

Private slot to handle the clientClearWatch signal.

condition (str)
  expression of watch expression to clear

#### DebugServer.__clientProcessError

__clientProcessError()

Private slot to process client output received via stderr.

#### DebugServer.__clientProcessOutput

__clientProcessOutput()

Private slot to process client output received via stdout.

#### DebugServer.__createDebuggerInterface

__createDebuggerInterface(clientType=None)

Private slot to create the debugger interface object.

clientType (str)
  type of the client interface to be created

#### DebugServer.__deleteBreakPoints

__deleteBreakPoints(parentIndex, start, end)

Private slot to delete breakpoints.

parentIndex (QModelIndex)
  index of parent item
start (int)
  start row
end (int)
  end row

#### DebugServer.__deleteWatchPoints

__deleteWatchPoints(parentIndex, start, end)

Private slot to delete watch expressions.

parentIndex (QModelIndex)
  index of parent item
start (int)
  start row
end (int)
  end row

#### DebugServer.__findLanguageForExtension

__findLanguageForExtension(ext)

Private method to get the language associated with a file extension.

ext (str)
  file extension

Return:
  associated language

Return Type:
  str

#### DebugServer.__getNetworkInterfaceAndIndex

__getNetworkInterfaceAndIndex(address)

Private method to determine the network interface and the interface index.

address (str)
  address to determine the info for

Return:
  tuple of network interface name and index

Return Type:
  tuple of (str, int)

#### DebugServer.__makeWatchCondition

__makeWatchCondition(cond, special)

Private method to construct the condition string.

cond (str)
  condition
special (str)
  special condition

Return:
  condition string

Return Type:
  str

#### DebugServer.__newConnection

__newConnection()

Private slot to handle a new connection.

#### DebugServer.__passiveShutDown

__passiveShutDown()

Private method to shut down a passive debug connection.

#### DebugServer.__registerDebuggerInterfaces

__registerDebuggerInterfaces()

Private method to register the available internal debugger interfaces.

#### DebugServer.__remoteBreakpointEnable

__remoteBreakpointEnable(debuggerId, fn, line, enable)

Private method to enable or disable a breakpoint.

debuggerId (str)
  ID of the debugger backend
fn (str)
  filename the breakpoint belongs to
line (int)
  line number of the breakpoint
enable (bool)
  flag indicating enabling or disabling a breakpoint

#### DebugServer.__remoteBreakpointIgnore

__remoteBreakpointIgnore(debuggerId, fn, line, count)

Private method to ignore a breakpoint the next couple of occurrences.

debuggerId (str)
  ID of the debugger backend
fn (str)
  filename the breakpoint belongs to
line (int)
  line number of the breakpoint
count (int)
  number of occurrences to ignore

#### DebugServer.__remoteWatchpoint

__remoteWatchpoint(debuggerId, cond, setWatch, temp=False)

Private method to set or clear a watch expression.

debuggerId (str)
  ID of the debugger backend
cond (str)
  expression of the watch expression
setWatch (bool)
  flag indicating setting or resetting a watch expression
temp (bool)
  flag indicating a temporary watch expression

#### DebugServer.__remoteWatchpointEnable

__remoteWatchpointEnable(debuggerId, cond, enable)

Private method to enable or disable a watch expression.

debuggerId (str)
  ID of the debugger backend
cond (str)
  expression of the watch expression
enable (bool)
  flag indicating enabling or disabling a watch expression

#### DebugServer.__remoteWatchpointIgnore

__remoteWatchpointIgnore(debuggerId, cond, count)

Private method to ignore a watch expression the next couple of occurrences.

debuggerId (str)
  ID of the debugger backend
cond (str)
  expression of the watch expression
count (int)
  number of occurrences to ignore

#### DebugServer.__restoreBreakpoints

__restoreBreakpoints(debuggerId="")

Private method to restore the breakpoints after a restart.

debuggerId (str)
  ID of the debugger backend to send to. If this is empty, they will be broadcast to all connected backends.

#### DebugServer.__restoreNoDebugList

__restoreNoDebugList(debuggerId="")

Private method to restore the list of scripts not to be debugged after a restart.

debuggerId (str)
  ID of the debugger backend to send to. If this is empty, they will be broadcast to all connected backends.

#### DebugServer.__restoreWatchpoints

__restoreWatchpoints(debuggerId="")

Private method to restore the watch expressions after a restart.

debuggerId (str)
  ID of the debugger backend to send to. If this is empty, they will be broadcast to all connected backends.

#### DebugServer.__setClientType

__setClientType(clType)

Private method to set the client type.

clType (str)
  type of client to be started

#### DebugServer.__splitWatchCondition

__splitWatchCondition(cond)

Private method to split a remote watch expression.

cond (str)
  remote expression

Return:
  tuple of local expression (string) and special condition

Return Type:
  str

#### DebugServer.__watchPointDataAboutToBeChanged

__watchPointDataAboutToBeChanged(startIndex, endIndex)

Private slot to handle the dataAboutToBeChanged signal of the watch expression model.

startIndex (QModelIndex)
  start index of the rows to be changed
endIndex (QModelIndex)
  end index of the rows to be changed

#### DebugServer.getBreakPointModel

getBreakPointModel()

Public slot to get a reference to the breakpoint model object.

Return:
  reference to the breakpoint model object

Return Type:
  BreakPointModel

#### DebugServer.getClientCapabilities

getClientCapabilities(clientType)

Public method to retrieve the debug clients capabilities.

clientType (str)
  debug client type

Return:
  debug client capabilities

Return Type:
  int

#### DebugServer.getClientInterpreter

getClientInterpreter()

Public method to get the interpreter of the debug client.

Return:
  interpreter of the debug client

Return Type:
  str

#### DebugServer.getClientType

getClientType()

Public method to get the currently running debug client type.

Return:
  debug client type

Return Type:
  str

#### DebugServer.getDebuggerIds

getDebuggerIds()

Public method to return the IDs of the connected debugger backends.

Return:
  list of connected debugger backend IDs

Return Type:
  list of str

#### DebugServer.getEricServerEnvironmentString

getEricServerEnvironmentString()

Public method to get the string for an eric-ide server environment.

Return:
  string for the eric-ide server environment

Return Type:
  str

#### DebugServer.getExtensions

getExtensions(language)

Public slot to get the extensions associated with the given language.

language (str)
  language to get extensions for

Return:
  tuple of extensions associated with the language

Return Type:
  tuple of str

#### DebugServer.getHostAddress

getHostAddress(localhost)

Public method to get the IP address or hostname the debug server is listening.

localhost (bool)
  flag indicating to return the address for localhost

Return:
  IP address or hostname

Return Type:
  str

#### DebugServer.getProjectEnvironmentString

getProjectEnvironmentString()

Public method to get the string for the project environment.

Return:
  string for the project environment

Return Type:
  str

#### DebugServer.getSupportedLanguages

getSupportedLanguages(shellOnly=False)

Public slot to return the supported programming languages.

shellOnly (bool)
  flag indicating only languages supporting an interactive shell should be returned

Return:
  list of supported languages

Return Type:
  list of str

#### DebugServer.getWatchPointModel

getWatchPointModel()

Public slot to get a reference to the watch expression model object.

Return:
  reference to the watch expression model object

Return Type:
  WatchPointModel

#### DebugServer.initializeClient

initializeClient(debuggerId)

Public method to initialize a freshly connected debug client.

debuggerId (str)
  ID of the connected debugger

#### DebugServer.isClientProcessUp

isClientProcessUp()

Public method to check, if the debug client process is up or we are doing debugging via the eric-ide server.

Return:
  flag indicating a running debug client process

Return Type:
  bool

#### DebugServer.isConnected

isConnected()

Public method to test, if the debug server is connected to a backend.

Return:
  flag indicating a connection

Return Type:
  bool

#### DebugServer.isDebugging

isDebugging()

Public method to test, if the debug server is debugging.

Return:
  flag indicating the debugging state

Return Type:
  bool

#### DebugServer.mainClientConnected

mainClientConnected()

Public method to perform actions after the main client has finally established the connection.

#### DebugServer.passiveStartUp

passiveStartUp(fn, reportAllExceptions, debuggerId)

Public method to handle a passive debug connection.

fn (str)
  filename of the debugged script
reportAllExceptions (bool)
  flag to enable reporting of all exceptions
debuggerId (str)
  ID of the debugger backend

#### DebugServer.preferencesChanged

preferencesChanged()

Public slot to handle the preferencesChanged signal.

#### DebugServer.registerDebuggerInterface

registerDebuggerInterface(interfaceName, getRegistryData, reregister=False)

Public method to register a debugger interface.

interfaceName (str)
  name of the debugger interface
getRegistryData (function)
  reference to a function to be called to get the debugger interface details. This method shall return the client language, the client capabilities, the list of associated file extensions and a function reference to create the debugger interface (see __createDebuggerInterface())
reregister (bool)
  flag indicating to re-register the interface

#### DebugServer.remoteBanner

remoteBanner()

Public slot to get the banner info of the remote client.

#### DebugServer.remoteBreakpoint

remoteBreakpoint(debuggerId, fn, line, setBreakpoint, cond=None, temp=False)

Public method to set or clear a breakpoint.

debuggerId (str)
  ID of the debugger backend
fn (str)
  filename the breakpoint belongs to
line (int)
  line number of the breakpoint
setBreakpoint (bool)
  flag indicating setting or resetting a breakpoint
cond (str)
  condition of the breakpoint
temp (bool)
  flag indicating a temporary breakpoint

#### DebugServer.remoteCapabilities

remoteCapabilities()

Public slot to get the debug clients capabilities.

#### DebugServer.remoteClientDisassembly

remoteClientDisassembly(debuggerId)

Public method to ask the client for the latest traceback disassembly.

debuggerId (str)
  ID of the debugger backend

#### DebugServer.remoteClientSetFilter

remoteClientSetFilter(debuggerId, scope, filterStr)

Public method to set a variables filter list.

debuggerId (str)
  ID of the debugger backend
scope (int)
  scope of the variables (0 = local, 1 = global)
filterStr (str)
  regexp string for variable names to filter out

#### DebugServer.remoteClientStack

remoteClientStack(debuggerId)

Public method to request the stack of the main thread.

debuggerId (str)
  ID of the debugger backend

#### DebugServer.remoteClientVariable

remoteClientVariable(debuggerId, scope, filterList, var, framenr=0, maxSize=0)

Public method to request the variables of the debugged program.

debuggerId (str)
  ID of the debugger backend
scope (int)
  scope of the variables (0 = local, 1 = global)
filterList (list of str)
  list of variable types to filter out
var (list of str)
  list encoded name of variable to retrieve
framenr (int)
  framenumber of the variables to retrieve
maxSize (int)
  maximum size the formatted value of a variable will be shown. If it is bigger than that, a 'too big' indication will be given (@@TOO_BIG_TO_SHOW@@). (unused)

#### DebugServer.remoteClientVariables

remoteClientVariables(debuggerId, scope, filterList, framenr=0)

Public method to request the variables of the debugged program.

debuggerId (str)
  ID of the debugger backend
scope (int)
  scope of the variables (0 = local, 1 = global)
filterList (list of str)
  list of variable types to filter out
framenr (int)
  framenumber of the variables to retrieve

#### DebugServer.remoteCompletion

remoteCompletion(debuggerId, text)

Public slot to get the a list of possible commandline completions from the remote client.

debuggerId (str)
  ID of the debugger backend
text (str)
  text to be completed

#### DebugServer.remoteContinue

remoteContinue(debuggerId, special=False)

Public method to continue the debugged program.

debuggerId (str)
  ID of the debugger backend
special (bool)
  flag indicating a special continue operation

#### DebugServer.remoteContinueUntil

remoteContinueUntil(debuggerId, line)

Public method to continue the debugged program to the given line or until returning from the current frame.

debuggerId (str)
  ID of the debugger backend
line (int)
  new line, where execution should be continued to

#### DebugServer.remoteCoverage

remoteCoverage(venvName, fn, argv, wd, env, autoClearShell=True, erase=False, forProject=False, runInConsole=False, clientType="", configOverride=None, )

Public method to load a new program to collect coverage data.

venvName (str)
  name of the virtual environment to be used
fn (str)
  filename to debug
argv (list of str)
  list of command line arguments to pass to the program
wd (str)
  working directory for the program
env (str or dict)
  environment parameter settings
autoClearShell (bool)
  flag indicating, that the interpreter window should be cleared
erase (bool)
  flag indicating that coverage info should be cleared first
forProject (bool)
  flag indicating a project related action
runInConsole (bool)
  flag indicating to start the debugger in a console window
clientType (str)
  client type to be used
configOverride (dict)
  dictionary containing the global config override data

#### DebugServer.remoteEnvironment

remoteEnvironment(env)

Public method to set the environment for a program to debug, run, ...

env (str or dict)
  environment settings

Raises TypeError:
  taised to indicate an unsupported parameter type

#### DebugServer.remoteLoad

remoteLoad(venvName, fn, argv, wd, env, autoClearShell=True, tracePython=False, autoContinue=True, forProject=False, runInConsole=False, clientType="", enableCallTrace=False, enableMultiprocess=False, multiprocessNoDebug="", configOverride=None, reportAllExceptions=False, )

Public method to load a new program to debug.

venvName (str)
  name of the virtual environment to be used
fn (str)
  filename to debug
argv (list of str)
  list of command line arguments to pass to the program
wd (str)
  working directory for the program
env (str or dict)
  environment parameter settings
autoClearShell (bool)
  flag indicating, that the interpreter window should be cleared
tracePython (bool)
  flag indicating if the Python library should be traced as well
autoContinue (bool)
  flag indicating, that the debugger should not stop at the first executable line
forProject (bool)
  flag indicating a project related action
runInConsole (bool)
  flag indicating to start the debugger in a console window
clientType (str)
  client type to be used
enableCallTrace (bool)
  flag indicating to enable the call trace function
enableMultiprocess (bool)
  flag indicating to perform multiprocess debugging
multiprocessNoDebug (str)
  space separated list of programs not to be debugged
configOverride (dict)
  dictionary containing the global config override data
reportAllExceptions (bool)
  flag indicating to report all exceptions instead of unhandled exceptions only

#### DebugServer.remoteMoveIP

remoteMoveIP(debuggerId, line)

Public method to move the instruction pointer to a different line.

debuggerId (str)
  ID of the debugger backend
line (int)
  new line, where execution should be continued

#### DebugServer.remoteProfile

remoteProfile(venvName, fn, argv, wd, env, autoClearShell=True, erase=False, forProject=False, runInConsole=False, clientType="", configOverride=None, )

Public method to load a new program to collect profiling data.

venvName (str)
  name of the virtual environment to be used
fn (str)
  filename to debug
argv (list of str)
  list of command line arguments to pass to the program
wd (str)
  working directory for the program
env (str or dict)
  environment parameter settings
autoClearShell (bool)
  flag indicating, that the interpreter window should be cleared
erase (bool)
  flag indicating that coverage info should be cleared first
forProject (bool)
  flag indicating a project related action
runInConsole (bool)
  flag indicating to start the debugger in a console window
clientType (str)
  client type to be used
configOverride (dict)
  dictionary containing the global config override data

#### DebugServer.remoteRawInput

remoteRawInput(debuggerId, inputString)

Public method to send the raw input to the debugged program.

debuggerId (str)
  ID of the debugger backend
inputString (str)
  raw input

#### DebugServer.remoteRun

remoteRun(venvName, fn, argv, wd, env, autoClearShell=True, forProject=False, runInConsole=False, clientType="", configOverride=None, )

Public method to load a new program to run.

venvName (str)
  name of the virtual environment to be used
fn (str)
  filename to debug
argv (list str)
  list of command line arguments to pass to the program
wd (str)
  working directory for the program
env (str or dict)
  environment parameter settings
autoClearShell (bool)
  flag indicating, that the interpreter window should be cleared
forProject (bool)
  flag indicating a project related action
runInConsole (bool)
  flag indicating to start the debugger in a console window
clientType (str)
  client type to be used
configOverride (dict)
  dictionary containing the global config override data

#### DebugServer.remoteSetThread

remoteSetThread(debuggerId, tid)

Public method to request to set the given thread as current thread.

debuggerId (str)
  ID of the debugger backend
tid (int)
  id of the thread

#### DebugServer.remoteStatement

remoteStatement(debuggerId, stmt)

Public method to execute a Python statement.

debuggerId (str)
  ID of the debugger backend
stmt (str)
  Python statement to execute.

#### DebugServer.remoteStep

remoteStep(debuggerId)

Public method to single step the debugged program.

debuggerId (str)
  ID of the debugger backend

#### DebugServer.remoteStepOut

remoteStepOut(debuggerId)

Public method to step out the debugged program.

debuggerId (str)
  ID of the debugger backend

#### DebugServer.remoteStepOver

remoteStepOver(debuggerId)

Public method to step over the debugged program.

debuggerId (str)
  ID of the debugger backend

#### DebugServer.remoteStepQuit

remoteStepQuit(debuggerId)

Public method to stop the debugged program.

debuggerId (str)
  ID of the debugger backend

#### DebugServer.remoteThreadList

remoteThreadList(debuggerId)

Public method to request the list of threads from the client.

debuggerId (str)
  ID of the debugger backend

#### DebugServer.setCallTraceEnabled

setCallTraceEnabled(debuggerId, on)

Public method to set the call trace state.

debuggerId (str)
  ID of the debugger backend
on (bool)
  flag indicating to enable the call trace function

#### DebugServer.setDebugging

setDebugging(on)

Public method to set the debugging state.

on (bool)
  flag indicating the new debugging state

#### DebugServer.shutdownServer

shutdownServer()

Public method to cleanly shut down.

It closes our socket and shuts down the debug client. (Needed on Win OS)

#### DebugServer.signalClientBanner

signalClientBanner(version, platform, venvName)

Public method to process the client banner info.

version (str)
  interpreter version info
platform (str)
  hostname of the client
venvName (str)
  name of the virtual environment

#### DebugServer.signalClientBreakConditionError

signalClientBreakConditionError(filename, lineno, debuggerId)

Public method to process the client breakpoint condition error info.

filename (str)
  filename of the breakpoint
lineno (int)
  line umber of the breakpoint
debuggerId (str)
  ID of the debugger backend

#### DebugServer.signalClientCallTrace

signalClientCallTrace(isCall, fromFile, fromLine, fromFunction, toFile, toLine, toFunction, debuggerId, )

Public method to process the client call trace data.

isCall (bool)
  flag indicating a 'call'
fromFile (str)
  name of the originating file
fromLine (str)
  line number in the originating file
fromFunction (str)
  name of the originating function
toFile (str)
  name of the target file
toLine (str)
  line number in the target file
toFunction (str)
  name of the target function
debuggerId (str)
  ID of the debugger backend

#### DebugServer.signalClientCapabilities

signalClientCapabilities(capabilities, clientType, venvName)

Public method to process the client capabilities info.

capabilities (int)
  bitmaks with the client capabilities
clientType (str)
  type of the debug client
venvName (str)
  name of the virtual environment

#### DebugServer.signalClientClearBreak

signalClientClearBreak(filename, lineno, debuggerId)

Public method to process the client clear breakpoint command.

filename (str)
  filename of the breakpoint
lineno (int)
  line umber of the breakpoint
debuggerId (str)
  ID of the debugger backend

#### DebugServer.signalClientClearWatch

signalClientClearWatch(condition, debuggerId)

Public slot to handle the clientClearWatch signal.

condition (str)
  expression of watch expression to clear
debuggerId (str)
  ID of the debugger backend

#### DebugServer.signalClientCompletionList

signalClientCompletionList(completionList, text, _debuggerId)

Public method to process the client auto completion info.

completionList (list of str)
  list of possible completions
text (str)
  the text to be completed
_debuggerId (str)
  ID of the debugger backend (unused)

#### DebugServer.signalClientDebuggerId

signalClientDebuggerId(debuggerId)

Public method to signal the receipt of a new debugger ID.

This signal indicates, that a new debugger backend has connected.

debuggerId (str)
  ID of the newly connected debugger backend

#### DebugServer.signalClientDisassembly

signalClientDisassembly(disassembly, debuggerId)

Public method to process the disassembly info from the client.

disassembly (dict)
  dictionary containing the disassembly information
debuggerId (str)
  ID of the debugger backend

#### DebugServer.signalClientDisconnected

signalClientDisconnected(debuggerId)

Public method to send a signal when a debug client has closed its connection.

debuggerId (str)
  ID of the debugger backend

#### DebugServer.signalClientException

signalClientException(exceptionType, exceptionMessage, stackTrace, debuggerId, threadName="")

Public method to process the exception info from the client.

exceptionType (str)
  type of exception raised
exceptionMessage (str)
  message given by the exception
stackTrace (list)
  list of stack entries with the exception position first. Each stack entry is a list giving the filename and the linenumber.
debuggerId (str)
  ID of the debugger backend
threadName (str)
  name of the thread signaling the event

#### DebugServer.signalClientExit

signalClientExit(program, status, message, debuggerId)

Public method to process the client exit status.

program (str)
  name of the exited program
status (int)
  exit code
message (str)
  message sent with the exit
debuggerId (str)
  ID of the debugger backend

#### DebugServer.signalClientLine

signalClientLine(filename, lineno, debuggerId, forStack=False, threadName="")

Public method to process client position feedback.

filename (str)
  name of the file currently being executed
lineno (int)
  line of code currently being executed
debuggerId (str)
  ID of the debugger backend
forStack (bool)
  flag indicating this is for a stack dump
threadName (str)
  name of the thread signaling the event

#### DebugServer.signalClientOutput

signalClientOutput(line, debuggerId)

Public method to process a line of client output.

line (str)
  client output
debuggerId (str)
  ID of the debugger backend

#### DebugServer.signalClientRawInput

signalClientRawInput(prompt, echo, debuggerId)

Public method to process the client raw input command.

prompt (str)
  the input prompt
echo (bool)
  flag indicating an echoing of the input
debuggerId (str)
  ID of the debugger backend

#### DebugServer.signalClientSignal

signalClientSignal(message, filename, lineNo, funcName, funcArgs, debuggerId)

Public method to process a signal generated on the client side.

message (str)
  message of the syntax error
filename (str)
  translated filename of the syntax error position
lineNo (int)
  line number of the syntax error position
funcName (str)
  name of the function causing the signal
funcArgs (str)
  function arguments
debuggerId (str)
  ID of the debugger backend

#### DebugServer.signalClientStack

signalClientStack(stack, debuggerId, threadName="")

Public method to process a client's stack information.

stack (list of lists of (string, integer, string))
  list of stack entries. Each entry is a tuple of three values giving the filename, linenumber and method
debuggerId (str)
  ID of the debugger backend
threadName (str)
  name of the thread signaling the event

#### DebugServer.signalClientStatement

signalClientStatement(more, debuggerId)

Public method to process the input response from the client.

more (bool)
  flag indicating that more user input is required
debuggerId (str)
  ID of the debugger backend

#### DebugServer.signalClientSyntaxError

signalClientSyntaxError(message, filename, lineNo, characterNo, debuggerId, threadName="")

Public method to process a syntax error info from the client.

message (str)
  message of the syntax error
filename (str)
  translated filename of the syntax error position
lineNo (int)
  line number of the syntax error position
characterNo (int)
  character number of the syntax error position
debuggerId (str)
  ID of the debugger backend
threadName (str)
  name of the thread signaling the event

#### DebugServer.signalClientThreadList

signalClientThreadList(currentId, threadList, debuggerId)

Public method to process the client thread list info.

currentId (int)
  id of the current thread
threadList (list of dict)
  list of dictionaries containing the thread data
debuggerId (str)
  ID of the debugger backend

#### DebugServer.signalClientThreadSet

signalClientThreadSet(debuggerId)

Public method to handle the change of the client thread.

debuggerId (str)
  ID of the debugger backend

#### DebugServer.signalClientVariable

signalClientVariable(scope, variables, debuggerId)

Public method to process the client variable info.

scope (int)
  scope of the variables (-1 = empty global, 1 = global, 0 = local)
variables (list)
  the list of members of a classvariable from the client
debuggerId (str)
  ID of the debugger backend

#### DebugServer.signalClientVariables

signalClientVariables(scope, variables, debuggerId)

Public method to process the client variables info.

scope (int)
  scope of the variables (-2 = no frame found, -1 = empty locals, 1 = global, 0 = local)
variables (list)
  the list of variables from the client
debuggerId (str)
  ID of the debugger backend

#### DebugServer.signalClientWatchConditionError

signalClientWatchConditionError(condition, debuggerId)

Public method to process the client watch expression error info.

condition (str)
  expression of watch expression to clear
debuggerId (str)
  ID of the debugger backend

#### DebugServer.signalLastClientExited

signalLastClientExited()

Public method to process the last client exit event.

#### DebugServer.signalMainClientExit

signalMainClientExit()

Public method to process the main client exiting.

#### DebugServer.startClient

startClient(unplanned=True, clType=None, forProject=False, runInConsole=False, venvName="", workingDir="", configOverride=None, startViaServer=None, )

Public method to start a debug client.

unplanned (bool (optional))
  flag indicating that the client has died (defaults to True)
clType (str (optional))
  type of client to be started (defaults to None)
forProject (bool (optional))
  flag indicating a project related action (defaults to False)
runInConsole (bool (optional))
  flag indicating to start the debugger in a console window (defaults to False)
venvName (str (optional))
  name of the virtual environment to be used (defaults to "")
workingDir (str (optional))
  directory to start the debugger client in (defaults to "")
configOverride (dict (optional))
  dictionary containing the global config override data (defaults to None)
startViaServer (bool (optional))
  flag indicating to start the client via an eric-ide server (defaults to None)

#### DebugServer.unregisterDebuggerInterface

unregisterDebuggerInterface(interfaceName)

Public method to unregister a debugger interface.

interfaceName (str)
  interfaceName of the debugger interface

Up